home *** CD-ROM | disk | FTP | other *** search
- ************************* MASTER CODE ***************************************
-
- The name of the first file in this disk's directory identifies the volume,
- issue number and revision of the disk. The format of this filename is:
-
- !CDmvvii.rrr
-
- where
-
- ! = the '!' character
- m = C for C Users Journal, W for Windows/DOS Developer's Journal
- vv = volume
- ii = issue
- rrr = revision (001 for initial release, 002 for next update, etc.)
-
- The file UPDATE.DOC contains information about any additions or
- corrections to material on the disk since the original magazine
- publication.
-
- If you have obtained this code from a floppy diskette or from CompuServe, the
- headings under the column "FILENAME" represent the names of .ZIP files. All
- files listed under the filename are archived in the .ZIP file.
-
- If you have obtained this code from UUNET, the headings under the column
- "FILENAME" represent the names of subdirectories. All files listed under the
- "filename" are included in a subdirectory of that name.
-
- Keywords: C C++ Temporary Compiler Internationalization Archimedes Visibility
-
- The code listings for the May 1994 issue of The C Users Journal
- include source for Robert Adams' dual classes for temporary objects,
- sample source listings for Louis Tsai's object oriented compiler,
- and Charles Hershey's program to demo the Archimedes C-51 compiler,
-
- ************************* FILE DESCRIPTION **********************************
-
- The following files are included in the disk:
-
- FILENAME AUTHOR-NAME TITLE PAGE
- (Zip archive/
- subdirectory name)
- -------------------------------------------------------------------------------
- plauger P.J. Plauger Standard C:The Header <ios> 10
-
-
-
- ios - listing 1, The header <ios>
- bitmask.h - listing 2, Definition of the macro _BITMASK
- ios.c - listing 3, Basic members of class ios
- except.c - listing 4, The function ios::exceptions(iostate)
- copyfmt.c - listing 5, The function ios::copyfmt(ios&)
- rdbuf.c - listing 6, The function ios::rdbuf(streambuf *)
- ioassign.c - listing 7, The ios assignment operator
- ioscopy.c - listing 8, The ios copy constructor
- tie.c - listing 9, The function ios::tie(ostream *)
- setf.c - listing 10, The function ios::setf(fmtflags)
- setf2.c - listing 11, The function ios::setf(fmtflags,
- fmtflags)
- unset.c - listing 12, The function ios::unset(fmtflags)
- findarr.c - listing 13, The function ios::_Findarr(int)
- dec.c - listing 14, The function dec(ios&)
-
- saks Dan Saks Stepping Up to C++: 67
- Compilation Firewalls, Part 2
-
- xr.cpp - listing 1, The main module for the cross-reference
- program
- xrt.h - listing 2, The xrt class definition
- xrt.cpp - listing 3, The xrt member function definitions
- lns1a.h - listing 4, Class definition for lns using a single
- pointer
- lns1a.cpp - listing 5, Member function definitions for lns using
- a single pointer
- lns1b.h - listing 6, Class definition for lns using a pair of
- pointers
- lns1b.cpp - listing 7, Member function definitions for lns using
- a pair of pointers
- lns2.h - listing 8, An lns header with lns as an abstract base
- class
- lns2.cpp - listing 9, A concrete lns clas derived from the lns
- protocol class
- lns3.h - listing 10, An lns header with lns as an abstract
- base class and a static create function
- lns4.h - listing 11, lns as a concrete class with a single
- private pointer to a protocol-based
- implementation object.
- lns4.cpp - listing 12, A "fast" implementation for the protocol-
- based lns defined in listing 11
- lns5.cpp - listing 13, Implementation for a self-adjusting lns
- class
-
-
- allison Chuck Allison Code Capsules:Visibility in C++ 81
-
- scope1.cpp - listing 1, Shows that declarations are statements
- date.h - listing 2, Defines a simple Date class
- date.cpp - listing 3, Implementation of date class defined in
- listing 2
- str.h - listing 4, A "copy-on-write" string class design.
- str.cpp - listing 5, Implementation for listing 4
- local.cpp - listing 6, Defines class Local
- cursor.h - listing 7, Cursor control module
- tcursor.cpp - listing 8, Illustrates cursor control functions
- cursor.cpp - listing 9, Implements cursor control for the IBM PC
- video.h - listing 10, IBM PC memory-mapped video output
- video.cpp - listing 11, implements video class
- share.cpp - listing 12, Demonstrates that tags and variables
- share the same namespace
- namedef.h - listing 13, Demonstrates use of namespace to define
- a module
- nameimp.h - listing 14, Adds implementation to complete the
- Cursor namespace
- cursloc.cpp - listing 15, Imports Cursor functions into a local
- scope
- cursglob.cpp - listing 16, Makes Cursor identifiers available
- globally
-
-
- adams Robert M. Adams Temporary Object Management 27
- Through Dual Classes
-
- unit.cpp - listing 1, Defines Vector function unit
- refcount.cpp - listing 2, Vector class with dynamic VES and
- reference counting
- tempvec.cpp - listing 3, Vector and Tempvector with dynamic VES
-
- tsai Louis Tsai Designing an OOP Compiler 37
-
- script - listing 1, A sample script program
- dialog - listing 2, A dialog file
- toknizer.h - listing 3, Definition of class Tokenizer
- asldlg.h - listing 4, Definition of classes Asl and Dlg
- init.cpp - listing 5, Implements Initialize() for classes
- Asl and Dlg
- pif.h - listing 6, Definition of parse node Pif
- parse.cpp - listing 7, Function parse() of Pif
- pstate.cpp - listing 8, Function pstatement::parse()
- pdialog.cpp - listing 9, Function PdialogStatement::parse()
- pwhile.cpp - listing 10, Function Pwhile::parse()
-
- hershey Charles Hershey Archimedes C-51 Hosted on an 49
- IBM-PC compatible
-
- arch.c - listing 1, A program to illustrate some features of
- the C-51 compiler
- arch.xcl - listing 2, Link file for sample program
- arch.mak - listing 3, Makefile for sample program
-
- heintze Siegfried Intuitive Access to Bit Arrays,
- Heintze CUJ, February 1994, p. 67
-
-
- boolean.h - Not listed, Replaces missing listing from February
- article
-
- ******************************************************************************
-
- If you have questions regarding to the disk, please call or write us.
-
- -----------------------------------------------------------------------------
- R&D Publications, Inc.
- 1601 W. 23rd St. Suite 200
- Lawrence, KS 66046
- (913) 841-1631
- -----------------------------------------------------------------------------
-
-